package main

import (
	"fmt"
	"github.com/gomodule/redigo/redis"
)

var pool *redis.Pool

func main() {
	conn := getConn()
	defer conn.Close()
	res, _ := redis.String(conn.Do("get", "goTest"))
	fmt.Println(res)
	//关闭连接池，关闭后就无法取出连接了
	defer pool.Close()
}

//初始化redis 连接池
func init() {
	pool = &redis.Pool{
		MaxIdle:     8,   //最大空闲连接数
		MaxActive:   0,   //和数据库最大连接数,0表示无限制
		IdleTimeout: 100, //最大空闲时间
		Dial: func() (redis.Conn, error) {
			dialOption := redis.DialPassword("xiaoyunshi")
			return redis.Dial("tcp", "127.0.0.1:6379", dialOption)
		},
	}
}

func getConn() redis.Conn {
	return pool.Get()
}

func CloseConn() {
}
